package com.kkb.pojo;

import java.util.ArrayList;
import java.util.Date;
import java.util.Iterator;
import java.util.List;

public class DoctorExample {
    protected String orderByClause;

    protected boolean distinct;

    protected List<Criteria> oredCriteria;

    public DoctorExample() {
        oredCriteria = new ArrayList<Criteria>();
    }

    public void setOrderByClause(String orderByClause) {
        this.orderByClause = orderByClause;
    }

    public String getOrderByClause() {
        return orderByClause;
    }

    public void setDistinct(boolean distinct) {
        this.distinct = distinct;
    }

    public boolean isDistinct() {
        return distinct;
    }

    public List<Criteria> getOredCriteria() {
        return oredCriteria;
    }

    public void or(Criteria criteria) {
        oredCriteria.add(criteria);
    }

    public Criteria or() {
        Criteria criteria = createCriteriaInternal();
        oredCriteria.add(criteria);
        return criteria;
    }

    public Criteria createCriteria() {
        Criteria criteria = createCriteriaInternal();
        if (oredCriteria.size() == 0) {
            oredCriteria.add(criteria);
        }
        return criteria;
    }

    protected Criteria createCriteriaInternal() {
        Criteria criteria = new Criteria();
        return criteria;
    }

    public void clear() {
        oredCriteria.clear();
        orderByClause = null;
        distinct = false;
    }

    protected abstract static class GeneratedCriteria {
        protected List<Criterion> criteria;

        protected GeneratedCriteria() {
            super();
            criteria = new ArrayList<Criterion>();
        }

        public boolean isValid() {
            return criteria.size() > 0;
        }

        public List<Criterion> getAllCriteria() {
            return criteria;
        }

        public List<Criterion> getCriteria() {
            return criteria;
        }

        protected void addCriterion(String condition) {
            if (condition == null) {
                throw new RuntimeException("Value for condition cannot be null");
            }
            criteria.add(new Criterion(condition));
        }

        protected void addCriterion(String condition, Object value, String property) {
            if (value == null) {
                throw new RuntimeException("Value for " + property + " cannot be null");
            }
            criteria.add(new Criterion(condition, value));
        }

        protected void addCriterion(String condition, Object value1, Object value2, String property) {
            if (value1 == null || value2 == null) {
                throw new RuntimeException("Between values for " + property + " cannot be null");
            }
            criteria.add(new Criterion(condition, value1, value2));
        }

        protected void addCriterionForJDBCDate(String condition, Date value, String property) {
            if (value == null) {
                throw new RuntimeException("Value for " + property + " cannot be null");
            }
            addCriterion(condition, new java.sql.Date(value.getTime()), property);
        }

        protected void addCriterionForJDBCDate(String condition, List<Date> values, String property) {
            if (values == null || values.size() == 0) {
                throw new RuntimeException("Value list for " + property + " cannot be null or empty");
            }
            List<java.sql.Date> dateList = new ArrayList<java.sql.Date>();
            Iterator<Date> iter = values.iterator();
            while (iter.hasNext()) {
                dateList.add(new java.sql.Date(iter.next().getTime()));
            }
            addCriterion(condition, dateList, property);
        }

        protected void addCriterionForJDBCDate(String condition, Date value1, Date value2, String property) {
            if (value1 == null || value2 == null) {
                throw new RuntimeException("Between values for " + property + " cannot be null");
            }
            addCriterion(condition, new java.sql.Date(value1.getTime()), new java.sql.Date(value2.getTime()), property);
        }

        public Criteria andDIdIsNull() {
            addCriterion("d_id is null");
            return (Criteria) this;
        }

        public Criteria andDIdIsNotNull() {
            addCriterion("d_id is not null");
            return (Criteria) this;
        }

        public Criteria andDIdEqualTo(Integer value) {
            addCriterion("d_id =", value, "dId");
            return (Criteria) this;
        }

        public Criteria andDIdNotEqualTo(Integer value) {
            addCriterion("d_id <>", value, "dId");
            return (Criteria) this;
        }

        public Criteria andDIdGreaterThan(Integer value) {
            addCriterion("d_id >", value, "dId");
            return (Criteria) this;
        }

        public Criteria andDIdGreaterThanOrEqualTo(Integer value) {
            addCriterion("d_id >=", value, "dId");
            return (Criteria) this;
        }

        public Criteria andDIdLessThan(Integer value) {
            addCriterion("d_id <", value, "dId");
            return (Criteria) this;
        }

        public Criteria andDIdLessThanOrEqualTo(Integer value) {
            addCriterion("d_id <=", value, "dId");
            return (Criteria) this;
        }

        public Criteria andDIdIn(List<Integer> values) {
            addCriterion("d_id in", values, "dId");
            return (Criteria) this;
        }

        public Criteria andDIdNotIn(List<Integer> values) {
            addCriterion("d_id not in", values, "dId");
            return (Criteria) this;
        }

        public Criteria andDIdBetween(Integer value1, Integer value2) {
            addCriterion("d_id between", value1, value2, "dId");
            return (Criteria) this;
        }

        public Criteria andDIdNotBetween(Integer value1, Integer value2) {
            addCriterion("d_id not between", value1, value2, "dId");
            return (Criteria) this;
        }

        public Criteria andDIdcarIsNull() {
            addCriterion("d_idCar is null");
            return (Criteria) this;
        }

        public Criteria andDIdcarIsNotNull() {
            addCriterion("d_idCar is not null");
            return (Criteria) this;
        }

        public Criteria andDIdcarEqualTo(String value) {
            addCriterion("d_idCar =", value, "dIdcar");
            return (Criteria) this;
        }

        public Criteria andDIdcarNotEqualTo(String value) {
            addCriterion("d_idCar <>", value, "dIdcar");
            return (Criteria) this;
        }

        public Criteria andDIdcarGreaterThan(String value) {
            addCriterion("d_idCar >", value, "dIdcar");
            return (Criteria) this;
        }

        public Criteria andDIdcarGreaterThanOrEqualTo(String value) {
            addCriterion("d_idCar >=", value, "dIdcar");
            return (Criteria) this;
        }

        public Criteria andDIdcarLessThan(String value) {
            addCriterion("d_idCar <", value, "dIdcar");
            return (Criteria) this;
        }

        public Criteria andDIdcarLessThanOrEqualTo(String value) {
            addCriterion("d_idCar <=", value, "dIdcar");
            return (Criteria) this;
        }

        public Criteria andDIdcarLike(String value) {
            addCriterion("d_idCar like", value, "dIdcar");
            return (Criteria) this;
        }

        public Criteria andDIdcarNotLike(String value) {
            addCriterion("d_idCar not like", value, "dIdcar");
            return (Criteria) this;
        }

        public Criteria andDIdcarIn(List<String> values) {
            addCriterion("d_idCar in", values, "dIdcar");
            return (Criteria) this;
        }

        public Criteria andDIdcarNotIn(List<String> values) {
            addCriterion("d_idCar not in", values, "dIdcar");
            return (Criteria) this;
        }

        public Criteria andDIdcarBetween(String value1, String value2) {
            addCriterion("d_idCar between", value1, value2, "dIdcar");
            return (Criteria) this;
        }

        public Criteria andDIdcarNotBetween(String value1, String value2) {
            addCriterion("d_idCar not between", value1, value2, "dIdcar");
            return (Criteria) this;
        }

        public Criteria andDPhoneIsNull() {
            addCriterion("d_phone is null");
            return (Criteria) this;
        }

        public Criteria andDPhoneIsNotNull() {
            addCriterion("d_phone is not null");
            return (Criteria) this;
        }

        public Criteria andDPhoneEqualTo(String value) {
            addCriterion("d_phone =", value, "dPhone");
            return (Criteria) this;
        }

        public Criteria andDPhoneNotEqualTo(String value) {
            addCriterion("d_phone <>", value, "dPhone");
            return (Criteria) this;
        }

        public Criteria andDPhoneGreaterThan(String value) {
            addCriterion("d_phone >", value, "dPhone");
            return (Criteria) this;
        }

        public Criteria andDPhoneGreaterThanOrEqualTo(String value) {
            addCriterion("d_phone >=", value, "dPhone");
            return (Criteria) this;
        }

        public Criteria andDPhoneLessThan(String value) {
            addCriterion("d_phone <", value, "dPhone");
            return (Criteria) this;
        }

        public Criteria andDPhoneLessThanOrEqualTo(String value) {
            addCriterion("d_phone <=", value, "dPhone");
            return (Criteria) this;
        }

        public Criteria andDPhoneLike(String value) {
            addCriterion("d_phone like", value, "dPhone");
            return (Criteria) this;
        }

        public Criteria andDPhoneNotLike(String value) {
            addCriterion("d_phone not like", value, "dPhone");
            return (Criteria) this;
        }

        public Criteria andDPhoneIn(List<String> values) {
            addCriterion("d_phone in", values, "dPhone");
            return (Criteria) this;
        }

        public Criteria andDPhoneNotIn(List<String> values) {
            addCriterion("d_phone not in", values, "dPhone");
            return (Criteria) this;
        }

        public Criteria andDPhoneBetween(String value1, String value2) {
            addCriterion("d_phone between", value1, value2, "dPhone");
            return (Criteria) this;
        }

        public Criteria andDPhoneNotBetween(String value1, String value2) {
            addCriterion("d_phone not between", value1, value2, "dPhone");
            return (Criteria) this;
        }

        public Criteria andDTelphoneIsNull() {
            addCriterion("d_telPhone is null");
            return (Criteria) this;
        }

        public Criteria andDTelphoneIsNotNull() {
            addCriterion("d_telPhone is not null");
            return (Criteria) this;
        }

        public Criteria andDTelphoneEqualTo(String value) {
            addCriterion("d_telPhone =", value, "dTelphone");
            return (Criteria) this;
        }

        public Criteria andDTelphoneNotEqualTo(String value) {
            addCriterion("d_telPhone <>", value, "dTelphone");
            return (Criteria) this;
        }

        public Criteria andDTelphoneGreaterThan(String value) {
            addCriterion("d_telPhone >", value, "dTelphone");
            return (Criteria) this;
        }

        public Criteria andDTelphoneGreaterThanOrEqualTo(String value) {
            addCriterion("d_telPhone >=", value, "dTelphone");
            return (Criteria) this;
        }

        public Criteria andDTelphoneLessThan(String value) {
            addCriterion("d_telPhone <", value, "dTelphone");
            return (Criteria) this;
        }

        public Criteria andDTelphoneLessThanOrEqualTo(String value) {
            addCriterion("d_telPhone <=", value, "dTelphone");
            return (Criteria) this;
        }

        public Criteria andDTelphoneLike(String value) {
            addCriterion("d_telPhone like", value, "dTelphone");
            return (Criteria) this;
        }

        public Criteria andDTelphoneNotLike(String value) {
            addCriterion("d_telPhone not like", value, "dTelphone");
            return (Criteria) this;
        }

        public Criteria andDTelphoneIn(List<String> values) {
            addCriterion("d_telPhone in", values, "dTelphone");
            return (Criteria) this;
        }

        public Criteria andDTelphoneNotIn(List<String> values) {
            addCriterion("d_telPhone not in", values, "dTelphone");
            return (Criteria) this;
        }

        public Criteria andDTelphoneBetween(String value1, String value2) {
            addCriterion("d_telPhone between", value1, value2, "dTelphone");
            return (Criteria) this;
        }

        public Criteria andDTelphoneNotBetween(String value1, String value2) {
            addCriterion("d_telPhone not between", value1, value2, "dTelphone");
            return (Criteria) this;
        }

        public Criteria andDSexIsNull() {
            addCriterion("d_sex is null");
            return (Criteria) this;
        }

        public Criteria andDSexIsNotNull() {
            addCriterion("d_sex is not null");
            return (Criteria) this;
        }

        public Criteria andDSexEqualTo(Integer value) {
            addCriterion("d_sex =", value, "dSex");
            return (Criteria) this;
        }

        public Criteria andDSexNotEqualTo(Integer value) {
            addCriterion("d_sex <>", value, "dSex");
            return (Criteria) this;
        }

        public Criteria andDSexGreaterThan(Integer value) {
            addCriterion("d_sex >", value, "dSex");
            return (Criteria) this;
        }

        public Criteria andDSexGreaterThanOrEqualTo(Integer value) {
            addCriterion("d_sex >=", value, "dSex");
            return (Criteria) this;
        }

        public Criteria andDSexLessThan(Integer value) {
            addCriterion("d_sex <", value, "dSex");
            return (Criteria) this;
        }

        public Criteria andDSexLessThanOrEqualTo(Integer value) {
            addCriterion("d_sex <=", value, "dSex");
            return (Criteria) this;
        }

        public Criteria andDSexIn(List<Integer> values) {
            addCriterion("d_sex in", values, "dSex");
            return (Criteria) this;
        }

        public Criteria andDSexNotIn(List<Integer> values) {
            addCriterion("d_sex not in", values, "dSex");
            return (Criteria) this;
        }

        public Criteria andDSexBetween(Integer value1, Integer value2) {
            addCriterion("d_sex between", value1, value2, "dSex");
            return (Criteria) this;
        }

        public Criteria andDSexNotBetween(Integer value1, Integer value2) {
            addCriterion("d_sex not between", value1, value2, "dSex");
            return (Criteria) this;
        }

        public Criteria andDBirthdayIsNull() {
            addCriterion("d_birthday is null");
            return (Criteria) this;
        }

        public Criteria andDBirthdayIsNotNull() {
            addCriterion("d_birthday is not null");
            return (Criteria) this;
        }

        public Criteria andDBirthdayEqualTo(Date value) {
            addCriterionForJDBCDate("d_birthday =", value, "dBirthday");
            return (Criteria) this;
        }

        public Criteria andDBirthdayNotEqualTo(Date value) {
            addCriterionForJDBCDate("d_birthday <>", value, "dBirthday");
            return (Criteria) this;
        }

        public Criteria andDBirthdayGreaterThan(Date value) {
            addCriterionForJDBCDate("d_birthday >", value, "dBirthday");
            return (Criteria) this;
        }

        public Criteria andDBirthdayGreaterThanOrEqualTo(Date value) {
            addCriterionForJDBCDate("d_birthday >=", value, "dBirthday");
            return (Criteria) this;
        }

        public Criteria andDBirthdayLessThan(Date value) {
            addCriterionForJDBCDate("d_birthday <", value, "dBirthday");
            return (Criteria) this;
        }

        public Criteria andDBirthdayLessThanOrEqualTo(Date value) {
            addCriterionForJDBCDate("d_birthday <=", value, "dBirthday");
            return (Criteria) this;
        }

        public Criteria andDBirthdayIn(List<Date> values) {
            addCriterionForJDBCDate("d_birthday in", values, "dBirthday");
            return (Criteria) this;
        }

        public Criteria andDBirthdayNotIn(List<Date> values) {
            addCriterionForJDBCDate("d_birthday not in", values, "dBirthday");
            return (Criteria) this;
        }

        public Criteria andDBirthdayBetween(Date value1, Date value2) {
            addCriterionForJDBCDate("d_birthday between", value1, value2, "dBirthday");
            return (Criteria) this;
        }

        public Criteria andDBirthdayNotBetween(Date value1, Date value2) {
            addCriterionForJDBCDate("d_birthday not between", value1, value2, "dBirthday");
            return (Criteria) this;
        }

        public Criteria andDAgeIsNull() {
            addCriterion("d_age is null");
            return (Criteria) this;
        }

        public Criteria andDAgeIsNotNull() {
            addCriterion("d_age is not null");
            return (Criteria) this;
        }

        public Criteria andDAgeEqualTo(Integer value) {
            addCriterion("d_age =", value, "dAge");
            return (Criteria) this;
        }

        public Criteria andDAgeNotEqualTo(Integer value) {
            addCriterion("d_age <>", value, "dAge");
            return (Criteria) this;
        }

        public Criteria andDAgeGreaterThan(Integer value) {
            addCriterion("d_age >", value, "dAge");
            return (Criteria) this;
        }

        public Criteria andDAgeGreaterThanOrEqualTo(Integer value) {
            addCriterion("d_age >=", value, "dAge");
            return (Criteria) this;
        }

        public Criteria andDAgeLessThan(Integer value) {
            addCriterion("d_age <", value, "dAge");
            return (Criteria) this;
        }

        public Criteria andDAgeLessThanOrEqualTo(Integer value) {
            addCriterion("d_age <=", value, "dAge");
            return (Criteria) this;
        }

        public Criteria andDAgeIn(List<Integer> values) {
            addCriterion("d_age in", values, "dAge");
            return (Criteria) this;
        }

        public Criteria andDAgeNotIn(List<Integer> values) {
            addCriterion("d_age not in", values, "dAge");
            return (Criteria) this;
        }

        public Criteria andDAgeBetween(Integer value1, Integer value2) {
            addCriterion("d_age between", value1, value2, "dAge");
            return (Criteria) this;
        }

        public Criteria andDAgeNotBetween(Integer value1, Integer value2) {
            addCriterion("d_age not between", value1, value2, "dAge");
            return (Criteria) this;
        }

        public Criteria andDEmailIsNull() {
            addCriterion("d_email is null");
            return (Criteria) this;
        }

        public Criteria andDEmailIsNotNull() {
            addCriterion("d_email is not null");
            return (Criteria) this;
        }

        public Criteria andDEmailEqualTo(String value) {
            addCriterion("d_email =", value, "dEmail");
            return (Criteria) this;
        }

        public Criteria andDEmailNotEqualTo(String value) {
            addCriterion("d_email <>", value, "dEmail");
            return (Criteria) this;
        }

        public Criteria andDEmailGreaterThan(String value) {
            addCriterion("d_email >", value, "dEmail");
            return (Criteria) this;
        }

        public Criteria andDEmailGreaterThanOrEqualTo(String value) {
            addCriterion("d_email >=", value, "dEmail");
            return (Criteria) this;
        }

        public Criteria andDEmailLessThan(String value) {
            addCriterion("d_email <", value, "dEmail");
            return (Criteria) this;
        }

        public Criteria andDEmailLessThanOrEqualTo(String value) {
            addCriterion("d_email <=", value, "dEmail");
            return (Criteria) this;
        }

        public Criteria andDEmailLike(String value) {
            addCriterion("d_email like", value, "dEmail");
            return (Criteria) this;
        }

        public Criteria andDEmailNotLike(String value) {
            addCriterion("d_email not like", value, "dEmail");
            return (Criteria) this;
        }

        public Criteria andDEmailIn(List<String> values) {
            addCriterion("d_email in", values, "dEmail");
            return (Criteria) this;
        }

        public Criteria andDEmailNotIn(List<String> values) {
            addCriterion("d_email not in", values, "dEmail");
            return (Criteria) this;
        }

        public Criteria andDEmailBetween(String value1, String value2) {
            addCriterion("d_email between", value1, value2, "dEmail");
            return (Criteria) this;
        }

        public Criteria andDEmailNotBetween(String value1, String value2) {
            addCriterion("d_email not between", value1, value2, "dEmail");
            return (Criteria) this;
        }

        public Criteria andDepartIdIsNull() {
            addCriterion("depart_id is null");
            return (Criteria) this;
        }

        public Criteria andDepartIdIsNotNull() {
            addCriterion("depart_id is not null");
            return (Criteria) this;
        }

        public Criteria andDepartIdEqualTo(Integer value) {
            addCriterion("depart_id =", value, "departId");
            return (Criteria) this;
        }

        public Criteria andDepartIdNotEqualTo(Integer value) {
            addCriterion("depart_id <>", value, "departId");
            return (Criteria) this;
        }

        public Criteria andDepartIdGreaterThan(Integer value) {
            addCriterion("depart_id >", value, "departId");
            return (Criteria) this;
        }

        public Criteria andDepartIdGreaterThanOrEqualTo(Integer value) {
            addCriterion("depart_id >=", value, "departId");
            return (Criteria) this;
        }

        public Criteria andDepartIdLessThan(Integer value) {
            addCriterion("depart_id <", value, "departId");
            return (Criteria) this;
        }

        public Criteria andDepartIdLessThanOrEqualTo(Integer value) {
            addCriterion("depart_id <=", value, "departId");
            return (Criteria) this;
        }

        public Criteria andDepartIdIn(List<Integer> values) {
            addCriterion("depart_id in", values, "departId");
            return (Criteria) this;
        }

        public Criteria andDepartIdNotIn(List<Integer> values) {
            addCriterion("depart_id not in", values, "departId");
            return (Criteria) this;
        }

        public Criteria andDepartIdBetween(Integer value1, Integer value2) {
            addCriterion("depart_id between", value1, value2, "departId");
            return (Criteria) this;
        }

        public Criteria andDepartIdNotBetween(Integer value1, Integer value2) {
            addCriterion("depart_id not between", value1, value2, "departId");
            return (Criteria) this;
        }

        public Criteria andDXueliIsNull() {
            addCriterion("d_xueli is null");
            return (Criteria) this;
        }

        public Criteria andDXueliIsNotNull() {
            addCriterion("d_xueli is not null");
            return (Criteria) this;
        }

        public Criteria andDXueliEqualTo(Integer value) {
            addCriterion("d_xueli =", value, "dXueli");
            return (Criteria) this;
        }

        public Criteria andDXueliNotEqualTo(Integer value) {
            addCriterion("d_xueli <>", value, "dXueli");
            return (Criteria) this;
        }

        public Criteria andDXueliGreaterThan(Integer value) {
            addCriterion("d_xueli >", value, "dXueli");
            return (Criteria) this;
        }

        public Criteria andDXueliGreaterThanOrEqualTo(Integer value) {
            addCriterion("d_xueli >=", value, "dXueli");
            return (Criteria) this;
        }

        public Criteria andDXueliLessThan(Integer value) {
            addCriterion("d_xueli <", value, "dXueli");
            return (Criteria) this;
        }

        public Criteria andDXueliLessThanOrEqualTo(Integer value) {
            addCriterion("d_xueli <=", value, "dXueli");
            return (Criteria) this;
        }

        public Criteria andDXueliIn(List<Integer> values) {
            addCriterion("d_xueli in", values, "dXueli");
            return (Criteria) this;
        }

        public Criteria andDXueliNotIn(List<Integer> values) {
            addCriterion("d_xueli not in", values, "dXueli");
            return (Criteria) this;
        }

        public Criteria andDXueliBetween(Integer value1, Integer value2) {
            addCriterion("d_xueli between", value1, value2, "dXueli");
            return (Criteria) this;
        }

        public Criteria andDXueliNotBetween(Integer value1, Integer value2) {
            addCriterion("d_xueli not between", value1, value2, "dXueli");
            return (Criteria) this;
        }

        public Criteria andDDescIsNull() {
            addCriterion("d_desc is null");
            return (Criteria) this;
        }

        public Criteria andDDescIsNotNull() {
            addCriterion("d_desc is not null");
            return (Criteria) this;
        }

        public Criteria andDDescEqualTo(String value) {
            addCriterion("d_desc =", value, "dDesc");
            return (Criteria) this;
        }

        public Criteria andDDescNotEqualTo(String value) {
            addCriterion("d_desc <>", value, "dDesc");
            return (Criteria) this;
        }

        public Criteria andDDescGreaterThan(String value) {
            addCriterion("d_desc >", value, "dDesc");
            return (Criteria) this;
        }

        public Criteria andDDescGreaterThanOrEqualTo(String value) {
            addCriterion("d_desc >=", value, "dDesc");
            return (Criteria) this;
        }

        public Criteria andDDescLessThan(String value) {
            addCriterion("d_desc <", value, "dDesc");
            return (Criteria) this;
        }

        public Criteria andDDescLessThanOrEqualTo(String value) {
            addCriterion("d_desc <=", value, "dDesc");
            return (Criteria) this;
        }

        public Criteria andDDescLike(String value) {
            addCriterion("d_desc like", value, "dDesc");
            return (Criteria) this;
        }

        public Criteria andDDescNotLike(String value) {
            addCriterion("d_desc not like", value, "dDesc");
            return (Criteria) this;
        }

        public Criteria andDDescIn(List<String> values) {
            addCriterion("d_desc in", values, "dDesc");
            return (Criteria) this;
        }

        public Criteria andDDescNotIn(List<String> values) {
            addCriterion("d_desc not in", values, "dDesc");
            return (Criteria) this;
        }

        public Criteria andDDescBetween(String value1, String value2) {
            addCriterion("d_desc between", value1, value2, "dDesc");
            return (Criteria) this;
        }

        public Criteria andDDescNotBetween(String value1, String value2) {
            addCriterion("d_desc not between", value1, value2, "dDesc");
            return (Criteria) this;
        }

        public Criteria andDIntimeIsNull() {
            addCriterion("d_inTime is null");
            return (Criteria) this;
        }

        public Criteria andDIntimeIsNotNull() {
            addCriterion("d_inTime is not null");
            return (Criteria) this;
        }

        public Criteria andDIntimeEqualTo(Date value) {
            addCriterionForJDBCDate("d_inTime =", value, "dIntime");
            return (Criteria) this;
        }

        public Criteria andDIntimeNotEqualTo(Date value) {
            addCriterionForJDBCDate("d_inTime <>", value, "dIntime");
            return (Criteria) this;
        }

        public Criteria andDIntimeGreaterThan(Date value) {
            addCriterionForJDBCDate("d_inTime >", value, "dIntime");
            return (Criteria) this;
        }

        public Criteria andDIntimeGreaterThanOrEqualTo(Date value) {
            addCriterionForJDBCDate("d_inTime >=", value, "dIntime");
            return (Criteria) this;
        }

        public Criteria andDIntimeLessThan(Date value) {
            addCriterionForJDBCDate("d_inTime <", value, "dIntime");
            return (Criteria) this;
        }

        public Criteria andDIntimeLessThanOrEqualTo(Date value) {
            addCriterionForJDBCDate("d_inTime <=", value, "dIntime");
            return (Criteria) this;
        }

        public Criteria andDIntimeIn(List<Date> values) {
            addCriterionForJDBCDate("d_inTime in", values, "dIntime");
            return (Criteria) this;
        }

        public Criteria andDIntimeNotIn(List<Date> values) {
            addCriterionForJDBCDate("d_inTime not in", values, "dIntime");
            return (Criteria) this;
        }

        public Criteria andDIntimeBetween(Date value1, Date value2) {
            addCriterionForJDBCDate("d_inTime between", value1, value2, "dIntime");
            return (Criteria) this;
        }

        public Criteria andDIntimeNotBetween(Date value1, Date value2) {
            addCriterionForJDBCDate("d_inTime not between", value1, value2, "dIntime");
            return (Criteria) this;
        }

        public Criteria andDStateIsNull() {
            addCriterion("d_state is null");
            return (Criteria) this;
        }

        public Criteria andDStateIsNotNull() {
            addCriterion("d_state is not null");
            return (Criteria) this;
        }

        public Criteria andDStateEqualTo(Integer value) {
            addCriterion("d_state =", value, "dState");
            return (Criteria) this;
        }

        public Criteria andDStateNotEqualTo(Integer value) {
            addCriterion("d_state <>", value, "dState");
            return (Criteria) this;
        }

        public Criteria andDStateGreaterThan(Integer value) {
            addCriterion("d_state >", value, "dState");
            return (Criteria) this;
        }

        public Criteria andDStateGreaterThanOrEqualTo(Integer value) {
            addCriterion("d_state >=", value, "dState");
            return (Criteria) this;
        }

        public Criteria andDStateLessThan(Integer value) {
            addCriterion("d_state <", value, "dState");
            return (Criteria) this;
        }

        public Criteria andDStateLessThanOrEqualTo(Integer value) {
            addCriterion("d_state <=", value, "dState");
            return (Criteria) this;
        }

        public Criteria andDStateIn(List<Integer> values) {
            addCriterion("d_state in", values, "dState");
            return (Criteria) this;
        }

        public Criteria andDStateNotIn(List<Integer> values) {
            addCriterion("d_state not in", values, "dState");
            return (Criteria) this;
        }

        public Criteria andDStateBetween(Integer value1, Integer value2) {
            addCriterion("d_state between", value1, value2, "dState");
            return (Criteria) this;
        }

        public Criteria andDStateNotBetween(Integer value1, Integer value2) {
            addCriterion("d_state not between", value1, value2, "dState");
            return (Criteria) this;
        }
    }

    public static class Criteria extends GeneratedCriteria {

        protected Criteria() {
            super();
        }
    }

    public static class Criterion {
        private String condition;

        private Object value;

        private Object secondValue;

        private boolean noValue;

        private boolean singleValue;

        private boolean betweenValue;

        private boolean listValue;

        private String typeHandler;

        public String getCondition() {
            return condition;
        }

        public Object getValue() {
            return value;
        }

        public Object getSecondValue() {
            return secondValue;
        }

        public boolean isNoValue() {
            return noValue;
        }

        public boolean isSingleValue() {
            return singleValue;
        }

        public boolean isBetweenValue() {
            return betweenValue;
        }

        public boolean isListValue() {
            return listValue;
        }

        public String getTypeHandler() {
            return typeHandler;
        }

        protected Criterion(String condition) {
            super();
            this.condition = condition;
            this.typeHandler = null;
            this.noValue = true;
        }

        protected Criterion(String condition, Object value, String typeHandler) {
            super();
            this.condition = condition;
            this.value = value;
            this.typeHandler = typeHandler;
            if (value instanceof List<?>) {
                this.listValue = true;
            } else {
                this.singleValue = true;
            }
        }

        protected Criterion(String condition, Object value) {
            this(condition, value, null);
        }

        protected Criterion(String condition, Object value, Object secondValue, String typeHandler) {
            super();
            this.condition = condition;
            this.value = value;
            this.secondValue = secondValue;
            this.typeHandler = typeHandler;
            this.betweenValue = true;
        }

        protected Criterion(String condition, Object value, Object secondValue) {
            this(condition, value, secondValue, null);
        }
    }
}